package top.lingchen.spring5.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import top.lingchen.spring5.dao.UserDao;

/**
 * @Author 凌宸
 * @create 2021-11-30 下午 9:23
 * @Description
 * @Version 1.0
 */
@Service
@Transactional
public class UserService {
    //注入 dao
    @Autowired
    private UserDao userDao;

    // 转账的方法

    public void accountMoney(){
        //try{
            // 第一步，开启事务
            // 第二步，进行业务操作
            // lucy 少 100
            userDao.reduceMoney();
//            int i = 10 / 0; // 模拟异常
            // mary 多 100
            userDao.addMoney();
            // 第三步，没有发生异常，提交事务

        //}catch (Exception e){
            // 第四步，出现异常，事务回滚

        //}
    }
}
